#pragma once

#include <host.h>

#ifdef _MSC_VER 
#define PACKED_STRUCT( __Declaration__ ) __pragma( pack(push, 1) ) struct __Declaration__ __pragma( pack(pop) )
#elif defined(__GNUC__)
#define PACKED_STRUCT( __Declaration__ ) struct __Declaration__ __attribute__((__packed__))
#endif

using namespace host;

extern OSCon consle;

#define TESTUNIT(name, num, usage) \
class TestUnit##name : public TestUnit \
{ \
public: \
    TestUnit##name() : TestUnit(#name, usage, num) \
    { \
    }; \
    virtual ~TestUnit##name() {}; \
    virtual int TestUnitProc(const char* args[], int argc); \
}; \
static TestUnit##name testUnit##name; \
int TestUnit##name::TestUnitProc(const char* args[], int argc)


int TSleep(const char* args[], int argc);
